package morenoapp.model.data;

import java.util.List;

/**
 * Ответ респондента на вопрос.
 *
 * @author dmitry.mamonov
 */
public interface MorenoAnswerFace extends MorenoIdFace {

    /**
     * Респондент предоставивший ответ.
     * @return
     */
    MorenoRespondentFace getRespondent();

    /**
     * Вопрос которому соответствует этот ответ.
     * @return
     */
    MorenoQuestionFace getQuestion();

    /**
     * Список позиций в ответе.
     * @return
     */
    List<MorenoAnswerItemFace> getAnswerItems();

    /**
     * Получить значение ответа для конкретной позиции в вовпросе.
     * @param _questionItem
     * @return
     */
    MorenoAnswerItemFace getAnswerItemByQuestionItem(MorenoQuestionItemFace _questionItem);

    /**
     * Получить номер ответа по респонденту, либо null если указанный респондент не был выборан.
     * @param _respondent
     * @return
     */
    MorenoAnswerItemFace getAnswerItemByRespondent(MorenoRespondentFace _target);
}
